1. Field of the Invention
The present invention relates to an image processing apparatus and an image reading apparatus.
2. Related Art
A technique which corrects image data obtained by reading an inclined original to form a not inclined image on a sheet of recording paper at the time of reading the image by scanning the original in the main scanning direction and in the sub scanning direction in a copier, has been developed.
As a method of the original inclination correction processing, there is a method of performing the original inclination correction processing by grasping image data as an assembly of linear data in the main scanning direction or an assembly of linear data in the sub scanning direction to combine main scanning shift processing of shifting the linear data in the main scanning direction (lateral direction), which constitutes the image, into the main scanning direction and sub scanning shift processing of shifting linear data in the sub scanning direction (longitudinal direction) into the sub scanning direction (see, for example, JP 2000-59611A).
Moreover, a configuration which secures a minimum required rectangular memory area as an input buffer in the sub scanning shift processing and selects the data in the input buffer according to an inclination angle to correct the selected data (see, for example, JP Hei 7-79321A), has been also developed.
FIG. 20 shows an outline of conventional sub scanning shift processing. As shown in FIG. 20, a case where inclined image data 200 after main scanning shift processing is subjected to sub scanning shift processing will be examined. The image data corresponding to a rectangular memory area 230 for predetermined lines is stored into a first-in first-out (FIFO) memory, and the image data in a reading area 231 in the memory area 230 is read from the stored image data. The inclination of the reading area 231 corresponds to the inclination of the image data 200. After the reading of the image data in the reading area 231, the memory area 230 is shifted for one pixel into the sub scanning direction (into the lower direction of the figure). By repeating this process, a sheet of image data the inclination of which has been corrected is obtained.
The correction is performed by the pixel in the main scanning shift processing and in the sub scanning shift processing. Accordingly, an error produced in an area smaller than one pixel has been processed by interpolation processing after each shift processing.
However, the storage capacity of the FIFO memory used for the sub scanning shift processing in the conventional image data inclination correction is required to be further reduced.
As shown in FIG. 20, the rectangular memory area 230 includes a read area 232 and a delay area 233 with a reading area 231 as a border. The delay area 233 includes the image data that has not been read yet. The read area 232 includes the image data that has been read in the reading area 231. Consequently, the FIFO memory has had a storage capacity for storing the memory area 230 including the unnecessary read area 232. Accordingly, it has been required to reduce the cost of the FIFO memory by reducing the storage capacity of the FIFO memory.
In order to prevent the storage capacity of the FIFO memory from enlarging, multileveling processing has been performed before the sub scanning shift processing to reduce the number of the bits of image data, and then the processing such as error diffusion has been performed. Accordingly, even if the FIFO memories having the same storage capacities are used, it has been required not to perform the multileveling processing at the time of the sub scanning shift processing to reproduce the pattern of the error diffusion.
In order to settle the problem mentioned above, a configuration can be considered which reduces the storage capacity of a FIFO memory used for the sub scanning shift processing by storing only the reading area 231 and the delay area 233 into the FIFO memory to perform the multileveling processing after the sub scanning shift processing. In this case, the capacity of the FIFO memory also increases according to the number of gradations of image data and inclination correction performance.
Because all the memories of a FIFO memory are always driven, the power consumption of the memory increases according to the increase of the capacity of the memory. Accordingly, it is required to reduce the power consumption of the FIFO memory. Because the calorific value of a memory increases as the power consumption of the memory increases, there is also the aspect of the problem of the difficulty of mounting the memory on an application specific integrated circuit (ASIC).